/**
 * 项目名称：MSH
 * 包名称：com.mt.common.sys.dao
 * 文件名称：RoleDao.java
 */
package com.mt.system.dao;

import java.util.List;

import com.mt.system.domain.Role;
import com.mt.system.domain.User;



/**
 * 类名称：RoleDao <br>
 * 类描述： <br>
 * 创建人： 马腾 <br>
 * 创建时间：Oct 18, 2012 11:52:12 AM <br>
 */
public interface RoleDao {
	
	/**
	 * 增加角色
	 * @param role
	 */
	public Role addRole(Role role);
	
	/**
	 * 更新角色
	 * @param role
	 */
	public void updateRole(Role role);
	
	/**
	 * 根据名称得到角色
	 * @param name
	 * @return
	 */
	public Role getRoleByName(String name);
	
	/**
	 * 删除角色
	 * @param role
	 */
	public void deleteRole(Role role);
	
	/**
	 * 是否绑定用户
	 * @param role
	 * @return
	 */
	public boolean isBindUser(Role role);

	/**
	 * 得到所有角色
	 * @param roleDto
	 * @return
	 */
	public List<Role> getAllRoles();
	
	/**
	 * 根据用户得到角色
	 * @param user
	 * @return
	 */
	public List<Role> getRolesByUser(User user);
}
